<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script type="module">
        function 生成素数(个数) {
            function 判断素数(n) {
                for(let c=2; c<Math.sqrt(n); c++) {
                    if (n % c === 0) {
                        return false;
                    }
                }
                return true;
            }

            const 素数数组 = [];
            const 最大值 = 1000000;
            while(素数数组.length < 个数) {
                let 候选项 = Math.floor(Math.random() * (最大值 + 1));
                if (判断素数(候选项)) {
                    素数数组.push(候选项);
                }
            }
            return 素数数组;
        }

        document.querySelector('#生成').addEventListener(
            'click',
            () => {
                const 个数 = document.querySelector('#个数').value;
                const 素数数组 = 生成素数(个数);
                document.querySelector('#输出').textContent = `
                    完成! 生成素数 ${个数} 个.
                `;
            }
        );


        document.querySelector('#重载').addEventListener(
            'click',
            () => {
                document.location.reload();
            }
        );
    </script>
</head>
<body>
    <div>
        <label for="个数">素数个数:</label>
        <input type="text" id="个数" name="素数" value="1000000">

        <button id="生成">生成</button>
        <button id="重载">重载</button>

        <div id="输出"></div>

        <textarea>点击生成按钮后尝试输入</textarea>
    </div>
</body>
</html>